import request from '@/utils/request'

/**
 * @typedef {Object} MenuParams
 * @property {number} id - 菜单项的唯一ID
 * @property {string} name - 菜单项的名称
 * @property {string} path - 菜单项的路径
 * @property {string} redirect - 重定向路径
 * @property {boolean} hidden - 是否隐藏
 * @property {boolean} alwaysShow - 是否总是显示
 * @property {Object} meta - 元数据
 * @property {string} meta.title - 菜单项标题
 * @property {string} meta.icon - 菜单项图标
 * @property {string} meta.updateTime - 菜单项更新时间
 * @property {string} meta.updateBy - 菜单项更新人
 * @property {string} meta.activeMenu - 当前激活的菜单项
 * @property {string} meta.roles - 角色权限
 */

// 获取菜单列表
export function getAllMenu() {
  return request({
    url: '/boss/menu/getAll',
    method: 'GET'
  })
}
// 保存或新增菜单
export function saveOrUpdate(menuInfo) {
  return request({
    url: '/boss/menu/saveOrUpdate',
    method: 'POST',
    data: menuInfo
  })
}

// 根据ID获取菜单详情
export function getMenuById(id) {
  return request({
    url: `/boss/menu/getEditMenuInfo`,
    method: 'GET',
    params: {
      id
    }
  })
}


// 删除菜单
export function deleteMenu(id) {
  return request({
    url: `/boss/menu/${id}`,
    method: 'DELETE',
  })
}